package com.yanqu.road.entity.activity.flowerstudy.data.cross;

import com.yanqu.road.entity.DataObject;
import com.yanqu.road.entity.DataStatus;
import com.yanqu.road.entity.FieldTypeAnnotation;

import java.util.Map;

@FieldTypeAnnotation(tableName = "t_c_flower_study_activity_user_exam",desc = "花城书房活动用户考试数据")
public class CrossFlowerStudyUserExamData extends DataObject {

    @FieldTypeAnnotation(desc = "活动id",select = true,update = true)
    private int activityId;
    @FieldTypeAnnotation(desc = "玩家id",select = true,update = true)
    private long userId;
    @FieldTypeAnnotation(desc = "服务器Id")
    private int serverId;
    @FieldTypeAnnotation(desc = "当前所在房间id")
    private String nowRoomId;

    @FieldTypeAnnotation(desc = "一答到底乡试分数")
    private long localExamScore;
    @FieldTypeAnnotation(desc = "一答到底省试分数")
    private long provinceExamScore;
    @FieldTypeAnnotation(desc = "一答到底殿试分数")
    private long palaceExamScore;

    @FieldTypeAnnotation(desc = "一答到底乡试时间")
    private long localExamTime;
    @FieldTypeAnnotation(desc = "一答到底省试时间")
    private long provinceExamTime;
    @FieldTypeAnnotation(desc = "一答到底殿试时间")
    private long palaceExamTime;

    @FieldTypeAnnotation(desc = "一答到底有资格场次 1为乡试 2为省试 3为殿试")
    private int hasQualificationExamSession;
    @FieldTypeAnnotation(desc = "今日参与一答到底次数 1为乡试 2为省试 3为殿试")
    private Map<Integer,Integer> todaySignUpCount;


    public int getActivityId() {
        return activityId;
    }
    public void setActivityId(int activityId) {
        if (this.activityId != activityId) {
            this.activityId = activityId;
            setOp(DataStatus.Update);
        }
    }

    public long getUserId() {
        return userId;
    }
    public void setUserId(long userId) {
        if (this.userId != userId) {
            this.userId = userId;
            setOp(DataStatus.Update);
        }
    }

    public int getServerId() {
        return serverId;
    }
    public void setServerId(int serverId) {
        if (this.serverId != serverId) {
            this.serverId = serverId;
            setOp(DataStatus.Update);
        }
    }

    public String getNowRoomId() {
        return nowRoomId;
    }
    public void setNowRoomId(String nowRoomId) {
        if (nowRoomId == null){
            return;
        }
        if (this.nowRoomId == null || !this.nowRoomId.equals(nowRoomId)) {
            this.nowRoomId = nowRoomId;
            setOp(DataStatus.Update);
        }
    }

    public long getLocalExamScore() {
        return localExamScore;
    }
    public void setLocalExamScore(long localExamScore) {
        if (this.localExamScore != localExamScore) {
            this.localExamScore = localExamScore;
            setOp(DataStatus.Update);
        }
    }

    public long getProvinceExamScore() {
        return provinceExamScore;
    }
    public void setProvinceExamScore(long provinceExamScore) {
        if (this.provinceExamScore != provinceExamScore) {
            this.provinceExamScore = provinceExamScore;
            setOp(DataStatus.Update);
        }
    }

    public long getPalaceExamScore() {
        return palaceExamScore;
    }
    public void setPalaceExamScore(long palaceExamScore) {
        if (this.palaceExamScore != palaceExamScore) {
            this.palaceExamScore = palaceExamScore;
            setOp(DataStatus.Update);
        }
    }

    public long getLocalExamTime() {
        return localExamTime;
    }
    public void setLocalExamTime(long localExamTime) {
        if (this.localExamTime != localExamTime) {
            this.localExamTime = localExamTime;
            setOp(DataStatus.Update);
        }
    }

    public long getProvinceExamTime() {
        return provinceExamTime;
    }
    public void setProvinceExamTime(long provinceExamTime) {
        if (this.provinceExamTime != provinceExamTime) {
            this.provinceExamTime = provinceExamTime;
            setOp(DataStatus.Update);
        }
    }

    public long getPalaceExamTime() {
        return palaceExamTime;
    }
    public void setPalaceExamTime(long palaceExamTime) {
        if (this.palaceExamTime != palaceExamTime) {
            this.palaceExamTime = palaceExamTime;
            setOp(DataStatus.Update);
        }
    }

    public int getHasQualificationExamSession() {
        return hasQualificationExamSession;
    }
    public void setHasQualificationExamSession(int hasQualificationExamSession) {
        if (this.hasQualificationExamSession != hasQualificationExamSession) {
            this.hasQualificationExamSession = hasQualificationExamSession;
            setOp(DataStatus.Update);
        }
    }

    public java.util.Map<java.lang.Integer, java.lang.Integer> getTodaySignUpCount() {
        return todaySignUpCount;
    }
    public void setTodaySignUpCount(java.util.Map<java.lang.Integer, java.lang.Integer> todaySignUpCount) {
        if (null == todaySignUpCount){
            return;
        }
        if (this.todaySignUpCount == null || !this.todaySignUpCount.equals(todaySignUpCount)) {
            this.todaySignUpCount = todaySignUpCount;
            setOp(DataStatus.Update);
        }
    }


}
